#ifndef COMET_H
#define COMET_H

#include "Effects/RGBEffect.h"
#include "Curve/hsv.h"

class Comet : public RGBEffect
{

public:
    Comet();
    ~Comet();

    //EFFECT_REGISTERER(ClassName(), CAT_SIMPLE, [](){return new Comet;});

    static std::string const ClassName() {return "Comet";}
    //void DefineExtraOptions(QLayout*) override;
    void StepEffect(ControllerZone* const controller_zone) override;

private:
    //Ui::Comet *ui;
    double time = 0;
    double progress = 0;

    RGBColor GetColor(unsigned int, unsigned int);

    hsv_t tmp;

};

#endif // COMET_H
